// pages/feedback/feedback.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    //被选中的图片路径 数组
    chooseImgs: [],

    //文本域的内容
    textVal: ""
  },

  //外网的图片的路径数组
  UpLoadImgs: [],

  //点击上传图片
  onImgUpload: function (e) {
    console.log("点击上传图片", e);
    //调用wx的选择图片API
    wx.chooseImage({
      count: 9, //同时选中图片的数量
      sizeType: ['original', 'compressed'], //是原始图片还是经过压缩后的图片
      sourceType: ['album', 'camera'], //图片来自相册或者照相机
      success: (res) => { //成功后的回调

        console.log("成功后的回调", res.tempFilePaths);
        let curFilePaths = res.tempFilePaths;
        this.setData({
          //图片数组进行拼接
          chooseImgs: [...this.data.chooseImgs, ...curFilePaths]
        })
      }
    })
  },


  //点击自定义图片组件的索引
  handleRemoveImg(e) {
    const {
      index
    } = e.currentTarget.dataset;
    // console.log(index);
    //获取data中的图片数组
    let {
      chooseImgs
    } = this.data;
    //删除元素
    chooseImgs.splice(index, 1);
    this.setData({
      chooseImgs
    })
  },


  //文本域的输入事件
  handleTextInput(e) {
    this.setData({
      textVal: e.detail.value
    })
  },

  //提交按钮的点击
  handleFormSubmit() {
    //获取文本域的内容 图片数组
    const {
      textVal,
      chooseImgs
    } = this.data;
    //合法性的验证
    if (!textVal.trim()) {
      //不合法
      wx.showToast({
        title: '输入不合法',
        icon: 'none',
        duration: 1500,
        mask: true,
      });
      return;
    }
    //准备上传图片到专门的图片服务器
    //上传文件的api不支持多个文件同时上传  遍历数组 挨个上传
    chooseImgs.forEach((v, i) => {
      wx.uploadFile({
        //图片要上传到哪里
        url: 'https://images.ac.cn/Home/Index/UploadAction/',
        //被上传的文件的路径
        filePath: v,
        //上传的文件的名称，后台来获取文件
        name: 'file',
        //顺带的文本信息
        formData: {},
        success:(res)=>{
          console.log(res);
          let url = JSON.parse(res.data).url;
          this.UpLoadImgs.push(url);
          // console.log(this.UpLoadImgs);

          //所有的图片都上传完毕了才触发
          if(i === chooseImgs.length-1){
            console.log("把文本的内容和外网的图片数组 提交到后台中");
            //提交成功了
            //重置页面
            this.setData({
              textVal:"",
              chooseImgs:[]
            })
            //返回上一个页面
            wx.navigateBack({
              delta: 1,
            })
          }
        }
      })
    })
  }
})